package com.weichen.studentgameexchange.comment.entity;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.weichen.studentgameexchange.common.enums.CommentStatus;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import java.io.Serial;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * <p>
 *
 * </p>
 *
 * @author 惟尘
 * @since 2025-02-05
 */
@Getter
@Setter
@ToString
@TableName("comment_audit_log")
@Schema(name = "CommentAuditLog对象", description = "")
public class CommentAuditLog implements Serializable {

    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * 审核日志ID
     */
    @Schema(description = "审核日志ID")
    @TableId(value = "audit_id", type = IdType.AUTO)
    private Long auditId;

    /**
     * 评论ID
     */
    @Schema(description = "评论ID")
    @TableField("comment_id")
    private Long commentId;

    /**
     * 审核人ID
     */
    @Schema(description = "审核人ID")
    @TableField("audit_user_id")
    private Long auditUserId;

    /**
     * 原状态
     */
    @Schema(description = "原状态")
    @TableField("old_status")
    private CommentStatus oldStatus;

    /**
     * 新状态
     */
    @Schema(description = "新状态")
    @TableField("new_status")
    private CommentStatus newStatus;

    /**
     * 审核时间
     */
    @Schema(description = "审核时间")
    @TableField("audit_time")
    private LocalDateTime auditTime;

    /**
     * 审核备注
     */
    @Schema(description = "审核备注")
    @TableField("audit_comment")
    private String auditComment;

}
